Currently, a variety of systems and/or processes are used for inspecting manufacturing defects in printed circuit boards. Printed circuit boards typically include one or more electrical components (e.g., computer chips, capacitors, etc.) soldered to an integrated circuit (IC). For many years, the de facto process for production of printed circuit board assemblies included manual visual inspection (MVI) after soldering, followed by an electrical test, such as in-circuit testing (ICT), at the end of the assembly process to isolate any defects that occurred during manufacturing. Typically, a final functional test was run to verify that the printed circuit board operated properly before it was integrated into a final product.
As the need for more complex printed circuit boards having more components increased, automated inspection systems became popular. Such inspection systems typically comprise a printed circuit board modeling system, an imaging system, and a control system. Typically, the modeling system is used to generate a computer model of a printed circuit board that is to be mass-produced. The imaging system comprises hardware and/or software for capturing an image of the manufactured printed circuit board. Currently, image systems employ a variety of imaging techniques (e.g., x-ray, optical, ultrasonic, thermal image, etc.). The control system typically receives a file containing a computer model of the particular printed circuit board from the modeling system. Based on the computer model, the control system may generate an inspection program to be implemented by the imaging system. The inspection program may be used to image a manufactured printed circuit board, which is based on the computer model generated by the modeling system. After the imaging system generates the images of the manufactured printed circuit board, the images may be compared to the computer model to inspect for a variety of manufacturing defects (e.g., open solder joints, shorts, missing components, misaligned components, insufficient solder joints, excess solder joints, reversed capacitors, solder balls, solder voids, etc).
Control systems implemented in current PCB inspection systems typically employ a graphical user interface to assist in generating the inspection program to be implemented by the imaging system and for interfacing with the PCB modeling system. The graphical user interface typically includes a portion for providing a graphical display comprising one or more image objects which may comprise, for example, the model of the printed circuit board. The graphical user interface, and a computer program associated with the control system that supports the graphical user interface, may also be configured to enable a user to select various image objects in the graphical display. For instance, in the graphical display of a model of a printed circuit board, the one or more image objects may comprise a particular component on the PCB, a pin on a particular component, etc.
For a number of reasons, the computer program may be configured such that user selection of image objects is limited to within the boundary of one or more target areas, which may also be displayed on the graphical display. In other words, typically a user is not able to select image objects that are not included within the target area. For instance, the target area on the graphical user interface may correspond to, for example, a portion of the printed circuit board to be imaged by the x-ray imaging system. From the perspective of the graphical user interface, the target area defines the available image objects that a user may select. From the perspective of the x-ray imaging system, the target area defines an area to be imaged. Thus, limiting user selection of image objects to the target area may be a means for controlling the x-ray imaging system.
By way of example, consider a situation where the target area is located within the graphical display in such a way that a large percentage of the target area does not contain an image object to be selected by the user. This situation may be problematic for several reasons. It may be advantageous to locate the target area such that the percentage of the target area containing image objects is maximized. This may be beneficial in order to capture a useful image (e.g., one which contains many components, pins, solder joints, etc. to be inspected for defects) for inspection purposes. Although the computer program may be configured to enable the user to manually relocate the target area in the graphical display, this iterative and manual process may be bothersome and time-consuming to users.
Thus, there is a need in the industry for improved systems and methods for managing interaction with a presentation of a tree structure in a graphical user interface.